//package com.itfenghuang.day01_作业;
//
//public class A01作业明细 {
//    1. 什么是封装？封装的好处？
//
//            2. this是什么？
//
//            3. 根据如下需求，完成代码(按照标准格式写)，然后在测试类中测试。
//    需求一：
//    手机类Phone
//    属性:品牌brand,价格price
//    行为:打电话call,发短信sendMessage,玩游戏,playGame
//    需求二：
//    人类Person
//    属性:姓名name,年龄age,性别gender
//    行为:学习study,睡觉sleep
//
//    需求三：
//    动物类Animal
//    属性:姓名name,年龄age
//    行为:吃饭eat
//    需求四：
//    狗类Dog
//    属性:姓名name,年龄age
//    行为:吃饭eat，看家lookHome
//    需求五：
//    猫类Cat
//    属性:姓名name,年龄age
//    行为:吃饭eat，抓老鼠catchMouse
//    需求六：
//    学生类Student
//    属性:语文成绩chinese，数学成绩math，英语成绩english
//    行为:求总成绩的方法getSum()
//
//
//4.根据需求写代码
//    一、有以下数据：
//            1.三个老师信息：
//    教师编号 	姓名	性别	年龄	科目
//    t001		薛之谦	男	26	Java
//    t002		张碧晨	女	24	IOS
//    t003		张杰	男	28	Java
//	2.存储两个科目信息：
//    课程编号		名称	创建时间		课程描述
//    s001		Java	2020-02-08	Java学科，包含JavaSE和JavaEE
//    s002		IOS	2020-02-09	IOS系统开发
//    二、请分别定义两个类；
//    三、创建MainApp类中，包含main()方法，创建相应对象，通过构造方法给成员变量赋值。
//    四、打印每个对象的所有属性。
//    要求：每个类要按照封装的原则进行定义。并提供无参和全参的构造方法。
//
//            7.根据需求写代码
//            (1)设计，并定义一个学员类：Student，要求有以下属性：
//    学员编号（String）
//    姓名（String）
//    性别（String）
//    身高（double）
//    年龄（int）
//    使用封装的原则，并提供无参和全参的构造方法。
//            (2)定义MainApp类，并包含main()方法
//(3)程序启动后，应分别提示用户输入学员编号、姓名等信息。
//    例如控制台显示：
//    请输入学员编号：
//            ...
//    请输入学员姓名：
//            ...
//            (4)数据接收到程序中，并定义局部变量存储
//            (5)创建Student对象，通过构造方法将所有数据存储到Student对象中
//            (6)打印对象中的每个属性值
//
//8.根据描述写代码
//    分析以下需求，并用代码实现
//	1.项目经理类Manager
//    属性：
//    姓名name
//            工号id
//    工资salary
//            奖金bonus
//    行为：
//    工作work()
//	2.程序员类Coder
//    属性：
//    姓名name
//            工号id
//    工资salary
//    行为：
//    工作work()
//    要求:
//            1.按照以上要求定义Manager类和Coder类,属性要私有,生成空参、有参构造，setter和getter方法
//		2.定义测试类,在main方法中创建该类的对象并给属性赋值(演示两种方法:setter方法和构造方法)
//		3.调用成员方法,打印格式如下:
//    工号为123基本工资为15000奖金为6000的项目经理一龙正在努力的做着管理工作,分配任务,检查员工提交上来的代码.....
//    工号为135基本工资为10000的程序员方便正在努力的写着代码......操作步骤描述
//
//9.根据描述写代码
//    分析以下需求，并用代码实现
//	1.老师类Teacher
//    属性:
//    姓名name
//            年龄age
//    讲课内容content
//    行为:
//    吃饭
//            讲课
//	2.学生类Student
//    属性:
//    姓名name
//            年龄age
//    学习内容content
//    行为:
//    吃饭eat()
//    学习study()
//    要求:
//            1.按照以上要求定义Teacher类和Student类,属性要私有,生成空参、有参构造，setter和getter方法
//		2.定义测试类,在main方法中创建该类的对象并给属性赋值(演示两种方法:setter方法和构造方法)
//		3.调用成员方法,打印格式如下:
//    年龄为30的小刚老师正在吃饭....
//    年龄为30的小刚老师正在亢奋的讲着JavaSE中面向对象的知识........("JavaSE中面向对象"代表老师讲课的内容)
//    年龄为18的韩光同学正在吃饭....
//    年龄为18的韩光同学正在专心致志的听着面向对象的知识....("面向对象"代表学生学习的内容)
//
//            10.根据描述写代码
//    分析以下需求，并用代码实现
//	1.猫类Cat
//    属性:
//    毛的颜色color
//            品种breed
//    行为:
//    吃饭eat()
//    抓老鼠catchMouse()
//	2.狗类Dog
//    属性:
//    毛的颜色color
//            品种breed
//    行为:
//    吃饭()
//    看家lookHome()
//    要求:
//            1.按照以上要求定义Cat类和Dog类,属性要私有,生成空参、有参构造，setter和getter方法
//		2.定义测试类,在main方法中创建该类的对象并给属性赋值(演示两种方法:setter方法和构造方法)
//		3.调用成员方法,打印格式如下:
//    花色的波斯猫正在吃鱼.....
//    花色的波斯猫正在逮老鼠....
//    黑色的藏獒正在啃骨头.....
//    黑色的藏獒正在看家.....
//
//            11.根据描述写代码
//    分析以下需求，并用代码实现
//            手机类Phone
//    属性:
//    品牌brand
//            价格price
//    行为:
//    打电话call()
//    发短信sendMessage()
//    玩游戏playGame()
//
//    要求:
//            1.按照以上要求定义类,属性要私有,生成空参、有参构造，setter和getter方法
//		2.定义测试类,在main方法中创建该类的对象并给属性赋值(演示两种方法:setter方法和构造方法)
//		3.调用三个成员方法,打印格式如下:
//    正在使用价格为998元的小米品牌的手机打电话....
//    正在使用价格为998元的小米品牌的手机发短信....
//    正在使用价格为998元的小米品牌的手机玩游戏....

//
//}
